From: MatmaRex Date: Fri, 24 May 2013 14:09:56 +0000 (+0200) Subject: Reorder SpecialRecentChanges::webOutput X-Git-Tag: 1.31.0-rc.0~18804^2 X-Git-Url: http://git.cyclocoop.org/%22.%24info%5B?a=commitdiff_plain;h=377a788ff0478ae2d27770e49d5f61bc87324097;p=lhc%2Fweb%2Fwiklou.git Reorder SpecialRecentChanges::webOutput Reordered the function to separate the data building logic and actual outputting. I'd love to actually split them in two functions, but the two parts are still slightly interdependent and passing everything as arguments would be awkward. Change-Id: If770640d5b79e8771470bb7b6d1fcc16060f06b0 --- diff --git a/includes/specials/SpecialRecentchanges.php b/includes/specials/SpecialRecentchanges.php index d26320221f..a408beb2ce 100644 --- a/includes/specials/SpecialRecentchanges.php +++ b/includes/specials/SpecialRecentchanges.php @@ -488,27 +488,15 @@ class SpecialRecentChanges extends IncludableSpecialPage { public function webOutput( $rows, $opts ) { global $wgRCShowWatchingUsers, $wgShowUpdatedMarker, $wgAllowCategorizedRecentChanges; - $limit = $opts['limit']; - - if ( !$this->including() ) { - // Output options box - $this->doHeader( $opts ); - } - - // And now for the content - $feedQuery = $this->getFeedQuery(); - if ( $feedQuery !== '' ) { - $this->getOutput()->setFeedAppendQuery( $feedQuery ); - } else { - $this->getOutput()->setFeedAppendQuery( false ); - } + // Build the final data if ( $wgAllowCategorizedRecentChanges ) { $this->filterByCategories( $rows, $opts ); } - $showNumsWachting = $this->getUser()->getOption( 'shownumberswatching' ); - $showWatcherCount = $wgRCShowWatchingUsers && $showNumsWachting; + $limit = $opts['limit']; + + $showWatcherCount = $wgRCShowWatchingUsers && $this->getUser()->getOption( 'shownumberswatching' ); $watcherCache = array(); $dbr = wfGetDB( DB_SLAVE ); @@ -516,14 +504,7 @@ class SpecialRecentChanges extends IncludableSpecialPage { $counter = 1; $list = ChangesList::newFromContext( $this->getContext() ); - if ( $rows->numRows() === 0 ) { - $this->getOutput()->wrapWikiMsg( - "
\n$1\n
", 'recentchanges-noresult' - ); - return; - } - - $s = $list->beginRecentChangesList(); + $rclistOutput = $list->beginRecentChangesList(); foreach ( $rows as $obj ) { if ( $limit == 0 ) { break; @@ -556,12 +537,34 @@ class SpecialRecentChanges extends IncludableSpecialPage { $changeLine = $list->recentChangesLine( $rc, !empty( $obj->wl_user ), $counter ); if ( $changeLine !== false ) { - $s .= $changeLine; + $rclistOutput .= $changeLine; --$limit; } } - $s .= $list->endRecentChangesList(); - $this->getOutput()->addHTML( $s ); + $rclistOutput .= $list->endRecentChangesList(); + + // Print things out + + if ( !$this->including() ) { + // Output options box + $this->doHeader( $opts ); + } + + // And now for the content + $feedQuery = $this->getFeedQuery(); + if ( $feedQuery !== '' ) { + $this->getOutput()->setFeedAppendQuery( $feedQuery ); + } else { + $this->getOutput()->setFeedAppendQuery( false ); + } + + if ( $rows->numRows() === 0 ) { + $this->getOutput()->wrapWikiMsg( + "
\n$1\n
", 'recentchanges-noresult' + ); + } else { + $this->getOutput()->addHTML( $rclistOutput ); + } } /**